# @Time : 2024/10/31 13:50
# @Author : Fioman 
# @Phone : 13149920693
"""
readline: 读取一行的内容,直到遇到换行符\n为止,包括换行符
realines: 用于读取文件的所有行,并且将其作为一个列表返回,列表中的元素是每一行的内容
read: 用于一次性读取文件的全部内容,或者是读取指定字节数的内容. 返回一个字符串.
"""
# region 1. readline(count=-1) #  读取一行的数据,当然也可以传入一个读取数量参数,会一行一行的按照count
# 去读取
with open('example.txt', 'r') as f:
    while True:
        line = f.readline()  # 读取一行内容,遇到换行符结束,包括换行符,也就是说这个line包括换行符
        # 但是如果文本中含有\n 或者是\r\n 是不会被识别为换行符的.
        if not line:
            break
        # 注意这里打印的时候,如果不使用line.strip()会打印一个换行符出来,会隔一行才显示下一条内容
        if len(line) > 20:
            print(rf"{line}")
        else:
            print(line.strip())

# endregion

# region 2. readlines()
print("---------------------readlines_simple--------------------")
with open('example.txt', 'r') as f:
    data = f.readlines(50)  # 这个50也不是50行的意思,而是50 个字符. 注意这个列表中每行字符串
    # 都是以\n结尾
    print(data)

    for line in data:
        print(rf"{line}")

# endregion

# region 3. read(count)
print("---------------------read_simple--------------------")
with open('example.txt', 'r') as f:
    data = f.read()
    print(data)
print("---------------------read_count_bytes--------------------")
with open('example.txt', 'r') as f:
    data = f.read(38)
    print(data)

# endregion
